花费 26 ms
TCMalloc 内存分配原理简析

一、TCMalloc TCMalloc简介 为啥要介绍 TCMalloc? 因为golang的内存分配算法绝大部分都是来自 TCMalloc,golang只改动了其中的一小部分。所以要理解gola ...

Sat Oct 24 23:06:00 CST 2020 0 2874
深入理解Go语言(05):sync.map原理分析

一、疑惑开篇 有了map为什么还要搞个sync.map 呢?它们之间有什么区别? 答:重要的一点是,map并发不是安全的。 在Go 1.6之前, 内置的map类型是部分goroutine安全 ...

Thu Jul 23 21:51:00 CST 2020 0 3308
深入理解Go语言(07):内存分配原理

一、Linux系统内存 在说明golang内存分配之前,先了解下Linux系统内存相关的基础知识,有助于理解golang内存分配原理。 1.1 虚拟内存技术 在早期内存管理中,如果程序太大,超过 ...

Wed Nov 04 05:04:00 CST 2020 0 1800
深入理解Go语言(06):Context原理分析

一、背景 在golang中,最主要的一个概念就是并发协程 goroutine,它只需用一个关键字 go 就可以开起一个协程,并运行。 一个单独的 goroutine运行,倒也没什么问题。如果是一个 ...

Sun Oct 11 06:37:00 CST 2020 0 1005
深入理解Go语言(04):scheduler调度器-GPM源码分析

在前面一节中简单介绍了golang的调度模型-GPM模型,介绍了他们各自的作用。这篇文章就来看看他们的源码结构。 Go版本:go1.13.9 M结构体 M结构体是OS线程的一个抽象,主 ...

Thu Apr 02 10:47:00 CST 2020 0 1182
深入理解Go语言(01): interface源码分析

分析接口的赋值,反射,断言的实现原理 版本:golang v1.12 interface底层使用2个struct表示的:eface和iface 一:接口类型分为2个 1. 空 ...

Sat Sep 21 00:49:00 CST 2019 0 1471
深入理解Go语言(03):scheduler调度器 - 基本介绍

一:什么是调度 平常我们在生活中会有哪些调度的例子呢?比如十字路口的红绿灯,它就是一种调度系统。在交通十字路口,每个路口上多多少少有一些车辆,为了限制这些车辆不随意行驶,就建起了红绿灯调度系统。红绿 ...

Sat Feb 15 12:01:00 CST 2020 0 1140

 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM